Swarm intelligence

Swarm intelligence (SI) is the collective behaviour of decentralized, self-organized systems, natural or artificial. The concept is employed in work on artificial intelligence. The expression was introduced by Gerardo Beni and Jing Wang in 1989, in the context of cellular robotic systems.[1]

SI systems are typically made up of a population of simple agents or boids interacting locally with one another and with their environment. The inspiration often comes from nature, especially biological systems. The agents follow very simple rules, and although there is no centralized control structure dictating how individual agents should behave, local, and to a certain degree random, interactions between such agents lead to the emergence of "intelligent" global behavior, unknown to the individual agents. Natural examples of SI include ant colonies, bird flocking, animal herding, bacterial growth, and fish schooling.

The application of swarm principles to robots is called swarm robotics, while 'swarm intelligence' refers to the more general set of algorithms. 'Swarm prediction' has been used in the context of forecasting problems.

Contents

Example algorithms

Altruism algorithm

Researchers in Switzerland have developed an algorithm based on Hamilton's rule of kin selection. The algorithm shows how altruism in a swarm of entities can, over time, evolve and result in more effective swarm behaviour.[2][3]

Ant colony optimization

Ant colony optimization (ACO) is a class of optimization algorithms modeled on the actions of an ant colony. ACO methods are useful in problems that need to find paths to goals. Artificial 'ants'—simulation agents—locate optimal solutions by moving through a parameter space representing all possible solutions. Real ants lay down pheromones directing each other to resources while exploring their environment. The simulated 'ants' similarly record their positions and the quality of their solutions, so that in later simulation iterations more ants locate better solutions.[4] One variation on this approach is the bees algorithm, which is more analogous to the foraging patterns of the honey bee.

Artificial bee colony algorithm

Artificial Bee Colony (ABC) algorithm is a swarm based meta-heuristic algorithm introduced by Karaboga in 2005 [5], and simulates the foraging behaviour of honey bees. The ABC algorithm has three phases: employed bee, onlooker bee and scout bee. In the employed bee and the onlooker bee phases, bees exploit the sources by local searches in the neighbourhood of the solutions selected based on deterministic selection in the employed bee phase and the probabilistic selection in the onlooker bee phase. In the scout bee phase which is an analogy of abandoning exhausted food sources in the foraging process, solutions that are not beneficial anymore for search progress are abandoned, and new solutions are inserted instead of them to explore new regions in the search space. The algorithm has a good-balanced exploration and exploitation ability.

Artificial immune systems

Artificial immune systems (AIS) concerns the usage of abstract structure and function of the immune system to computational systems, and investigating the application of these systems towards solving computational problems from mathematics, engineering, and information technology. AIS is a sub-field of Biologically-inspired computing, and natural computation, with interests in Machine Learning and belonging to the broader field of Artificial Intelligence.

Charged system search

Charged System Search (CSS) is a new optimization algorithm based on some principles from physics and mechanics.[6] CSS utilizes the governing laws of Coulomb and Gauss from electrostatics and the Newtonian laws of mechanics. CSS is a multi-agent approach in which each agent is a Charged Particle (CP). CPs can affect each other based on their fitness values and their separation distances. The quantity of the resultant force is determined by using the electrostatics laws and the quality of the movement is determined using Newtonian mechanics laws. CSS is applicable to all optimization fields; especially it is suitable for non-smooth or non-convex domains. This algorithm provides a good balance between the exploration and the exploitation paradigms of the algorithm which can considerably improve the efficiency of the algorithm and therefore the CSS also can be considered as a good global and local optimizer simultaneously.

Cuckoo search

Cuckoo search (CS) mimics the brooding behaviour of some cuckoo species, which use host birds to hatch their eggs and raise their chicks. This cuckoo search algorithm[7] is enhanced with Levy flights with jump steps drawn from Levy distribution.[8] Recent studies suggested that CS can outperform other algorithms such as particle swarm optimization. For example, a comparison of the cuckoo search with PSO, DE and ABC suggest that CS and DE algorithms provide more robust results than PSO and ABC.[9]

Firefly Algorithm

Firefly algorithm (FA) is another swarm-based algorithm, which was inspired by the flashing behaviour of fireflies. Light intensity is associated with attractiveness of a firefly, and such attraction enable the fireflies with the ability to subdivide into small groups and each subgroup swarm around the local modes. Therefore, firefly algorithm is specially suitable for multimodal optimization problems.[10] In fact, FA has been applied in continuous optimization, traveling salesman problem, clustering, image processing and feature selection.

Gravitational search algorithm

Gravitational search algorithm (GSA) is constructed based on the law of gravity and the notion of mass interactions. The GSA algorithm uses the theory of Newtonian physics and its searcher agents are the collection of masses. In GSA, we have an isolated system of masses. Using the gravitational force, every mass in the system can see the situation of other masses. The gravitational force is therefore a way of transferring information between different masses (Rashedi, Nezamabadi-pour and Saryazdi 2009).[11] In GSA, agents are considered as objects and their performance is measured by their masses. All these objects attract each other by a gravity force, and this force causes a movement of all objects globally towards the objects with heavier masses. The heavy masses correspond to good solutions of the problem. The position of the agent corresponds to a solution of the problem, and its mass is determined using a fitness function. By lapse of time, masses are attracted by the heaviest mass. We hope that this mass would present an optimum solution in the search space. The GSA could be considered as an isolated system of masses. It is like a small artificial world of masses obeying the Newtonian laws of gravitation and motion (Rashedi, Nezamabadi-pour and Saryazdi 2009). A multi-objective variant of GSA, called Non-dominated Sorting Gravitational Search Algorithm (NSGSA), was proposed by Nobahari and Nikusokhan in 2011.[12]

Intelligent water drops

Intelligent Water Drops algorithm (IWD) is a swarm-based nature-inspired optimization algorithm, which has been inspired by natural rivers and how they find almost optimal paths to their destination. These near optimal or optimal paths follow from actions and reactions occurring among the water drops and the water drops with their riverbeds. In the IWD algorithm, several artificial water drops cooperate to change their environment in such a way that the optimal path is revealed as the one with the lowest soil on its links. The solutions are incrementally constructed by the IWD algorithm. Consequently, the IWD algorithm is generally a constructive population-based optimization algorithm.[13]

Particle swarm optimization

Particle swarm optimization (PSO) is a global optimization algorithm for dealing with problems in which a best solution can be represented as a point or surface in an n-dimensional space. Hypotheses are plotted in this space and seeded with an initial velocity, as well as a communication channel between the particles.[14][15] Particles then move through the solution space, and are evaluated according to some fitness criterion after each timestep. Over time, particles are accelerated towards those particles within their communication grouping which have better fitness values. The main advantage of such an approach over other global minimization strategies such as simulated annealing is that the large number of members that make up the particle swarm make the technique impressively resilient to the problem of local minima.

River formation dynamics

River formation dynamics (RFD)[16] is an heuristic method similar to ant colony optimization (ACO). In fact, RFD can be seen as a gradient version of ACO, based on copying how water forms rivers by eroding the ground and depositing sediments. As water transforms the environment, altitudes of places are dynamically modified, and decreasing gradients are constructed. The gradients are followed by subsequent drops to create new gradients, reinforcing the best ones. By doing so, good solutions are given in the form of decreasing altitudes. This method has been applied to solve different NP-complete problems (for example, the problems of finding a minimum distances tree and finding a minimum spanning tree in a variable-cost graph[17]). The gradient orientation of RFD makes it specially suitable for solving these problems and provides a good tradeoff between finding good results and not spending much computational time. In fact, RFD fits particularly well for problems consisting in forming a kind of covering tree.[18]

Self-propelled particles

Self-propelled particles (SPP), also referred to as the Couzin–Vicsek algorithm,[19][20] was introduced in 1995 by Vicsek and Couzin et al.[21] as a special case of the boids model introduced in 1986 by Reynolds.[22] A swarm is modelled in SPP by a collection of particles that move with a constant speed but respond to a random perturbation by adopting at each time increment the average direction of motion of the other particles in their local neighbourhood.[23] SPP models predict that swarming animals share certain properties at the group level, regardless of the type of animals in the swarm.[24] Swarming systems give rise to emergent behaviours which occur at many different scales, some of which are turning out to be both universal and robust. It has become a challenge in theoretical physics to find minimal statistical models that capture these behaviours.[25][26][27]

Stochastic diffusion search

Stochastic diffusion search (SDS) is an agent-based probabilistic global search and optimization technique best suited to problems where the objective function can be decomposed into multiple independent partial-functions. Each agent maintains a hypothesis which is iteratively tested by evaluating a randomly selected partial objective function parameterised by the agent's current hypothesis. In the standard version of SDS such partial function evaluations are binary, resulting in each agent becoming active or inactive. Information on hypotheses is diffused across the population via inter-agent communication. Unlike the stigmergic communication used in ACO, in SDS agents communicate hypotheses via a one-to-one communication strategy analogous to the tandem running procedure observed in some species of ant. A positive feedback mechanism ensures that, over time, a population of agents stabilise around the global-best solution. SDS is both an efficient and robust search and optimisation algorithm, which has been extensively mathematically described.

Applications

Swarm Intelligence-based techniques can be used in a number of applications. The U.S. military is investigating swarm techniques for controlling unmanned vehicles. The European Space Agency is thinking about an orbital swarm for self assembly and interferometry. NASA is investigating the use of swarm technology for planetary mapping. A 1992 paper by M. Anthony Lewis and George A. Bekey discusses the possibility of using swarm intelligence to control nanobots within the body for the purpose of killing cancer tumors.[28] Swarm intelligence has also been applied for data mining.[29]

Crowd simulation

Artists are using swarm technology as a means of creating complex interactive systems or simulating crowds.

Stanley and Stella in: Breaking the Ice was the first movie to make use of swarm technology for rendering, realistically depicting the movements of groups of fish and birds using the Boids system. Tim Burton's Batman Returns also made use of swarm technology for showing the movements of a group of bats. The Lord of the Rings film trilogy made use of similar technology, known as Massive, during battle scenes. Swarm technology is particularly attractive because it is cheap, robust, and simple.

Airlines have used swarm theory to simulate passengers boarding a plane. Southwest Airlines researcher Douglas A. Lawson used an ant-based computer simulation employing only six interaction rules to evaluate boarding times using various boarding methods.(Miller, 2010, xii-xviii).[30]

Ant-based routing

The use of Swarm Intelligence in Telecommunication Networks has also been researched, in the form of Ant Based Routing. This was pioneered separately by Dorigo et al. and Hewlett Packard in the mid-1990s, with a number of variations since. Basically this uses a probabilistic routing table rewarding/reinforcing the route successfully traversed by each "ant" (a small control packet) which flood the network. Reinforcement of the route in the forwards, reverse direction and both simultaneously have been researched: backwards reinforcement requires a symmetric network and couples the two directions together; forwards reinforcement rewards a route before the outcome is known (but then you pay for the cinema before you know how good the film is). As the system behaves stochastically and is therefore lacking repeatability, there are large hurdles to commercial deployment. Mobile media and new technologies have the potential to change the threshold for collective action due to swarm intelligence (Rheingold: 2002, P175).

Airlines have also used ant-based routing in assigning aircraft arrivals to airport gates. At Southwest Airlines a software program uses swarm theory, or swarm intelligence—the idea that a colony of ants works better than one alone. Each pilot acts like an ant searching for the best airport gate. "The pilot learns from his experience what's the best for him, and it turns out that that's the best solution for the airline," Douglas A. Lawson explains. As a result, the "colony" of pilots always go to gates they can arrive at and depart from quickly. The program can even alert a pilot of plane back-ups before they happen. "We can anticipate that it's going to happen, so we'll have a gate available," Lawson says.[31]

References in popular culture

Swarm intelligence-related concepts and references can be found throughout popular culture, frequently as some form of collective intelligence or group mind involving far more agents than used in current applications.

Notable researchers

See also

References

  1. ^ Beni, G., Wang, J. Swarm Intelligence in Cellular Robotic Systems, Proceed. NATO Advanced Workshop on Robots and Biological Systems, Tuscany, Italy, June 26–30 (1989)
  2. ^ Altruism helps swarming robots fly better genevalunch.com, 4 May 2011.
  3. ^ Waibel M, Floreano1 D and Keller L (2011) "A quantitative test of Hamilton's rule for the evolution of altruism" PLoS Biology, 9(5): e1000615. doi:10.1371/journal.pbio.1000615
  4. ^ Ant Colony Optimization by Marco Dorigo and Thomas Stützle, MIT Press, 2004. ISBN 0-262-04219-3
  5. ^ Karaboga, Dervis (2010) Artificial bee colony algorithm Scholarpedia, 5(3): 6915.
  6. ^ Kaveh, A.; Talatahari, S. (2010). "A Novel Heuristic Optimization Method: Charged System Search". Acta Mechanica 213 (3-4): 267–289. doi:10.1007/s00707-009-0270-4. 
  7. ^ Yang X.-S. and Deb S. (December 2009). "Cuckoo search via Lévy flights". World Congress on Nature & Biologically Inspired Computing (NaBIC 2009). IEEE Publications. pp. 210–214. arXiv:1003.1594v1.
  8. ^ http://www.sciencedaily.com/releases/2010/05/100527213816.htm
  9. ^ P. Civicioglu and E. Besdok, A conception comparison of the cuckoo search, particle swarm optimization, differential evolution and artificial bee colony algorithms, Artificial Intelligence Review, DOI 10.1007/s10462-011-92760, 6 July (2011).
  10. ^ Yang X. S., (2008). Nature-Inspired Metaheuristic Algorithms. Frome: Luniver Press. ISBN 1905986106.
  11. ^ Rashedi, E.; Nezamabadi-pour, H.; Saryazdi, S. (2009). "GSA: a gravitational search algorithm". Information Science 179 (13): 2232–2248. 
  12. ^ Nobahari, H.; Nikusokhan, M.. "Non-dominated Sorting Gravitational Search Algorithm". International Conference on Swarm Intelligence. 
  13. ^ Shah-Hosseini, Hamed (2009). "The intelligent water drops algorithm: a nature-inspired swarm-based optimization algorithm". International Journal of Bio-Inspired Computation 1 (1/2): 71–79. http://www.inderscience.com/filter.php?aid=22775. 
  14. ^ Parsopoulos, K. E.; Vrahatis, M. N. (2002). "Recent Approaches to Global Optimization Problems Through Particle Swarm Optimization". Natural Computing 1 (2-3): 235–306. doi:10.1023/A:1016568309421. 
  15. ^ Particle Swarm Optimization by Maurice Clerc, ISTE, ISBN 1-905209-04-5, 2006.
  16. ^ Using River Formation Dynamics to Design Heuristic Algorithms by Pablo Rabanal, Ismael Rodríguez and Fernando Rubio, Springer, 2007. ISBN 978-3-540-73553-3
  17. ^ Finding Minimum Spanning/Distances Trees by Using River Formation Dynamics by Pablo Rabanal, Ismael Rodríguez and Fernando Rubio, Springer, 2008. ISBN 978-3-540-87526-0
  18. ^ A Formal Approach to Heuristically Test Restorable Systems by Pablo Rabanal, Ismael Rodríguez and Fernando Rubio, Springer, 2009. ISBN 978-3-642-03465-7
  19. ^ Degond, P.; & Motsch, S. (2007) "Continuum limit of self-driven particles with orientation interaction" SIAM J Appl Math, arXiv:0710.0293.
  20. ^ Setekera, R. (2009) "Numerical simulation of herding and flocking models" Masters' thesis, supervisor A Klar, Technische Universiteit Eindhoven.
  21. ^ Vicsek, T.; Czirok, A.; Ben-Jacob, E.; Cohen, I. & Shochet, O. (1995) "Novel type of phase transition in a system of self-driven particles" Physical review letters, 75:1226–1229. doi:10.1103/PhysRevLett.75.1226
  22. ^ Reynolds, C.W. (1987) "Flocks, herds and schools: A distributed behavioral model" Computer Graphics, 21(4), 25–34. doi:10.1145/37401.37406
  23. ^ Czirók, A. & Vicsek, T. (2006) "Collective behavior of interacting self-propelled particles" Physica A, 281: 17–29. doi:10.1016/S0378-4371(00)00013-3
  24. ^ Buhl, J.; Sumpter, D.J.T.; Couzin, D.; Hale, J.J.; Despland, E.; Miller, E.R. & Simpson, S.J. (2006) "From disorder to order in marching locusts Science, 312(5778): 1402–1406. doi:10.1126/science.1125142
  25. ^ Toner, J.; Tu, Y. & Ramaswamy, S. (2005) "Hydrodynamics and phases of flocks" Annals Of Physics, 318(170)
  26. ^ Bertin, E.; Droz, M. & Grégoire, G. (2009) "Hydrodynamic equations for self-propelled particles: microscopic derivation and stability analysis" J. Phys. A, 42(44): paper 445001. doi:10.1088/1751-8113/42/44/445001
  27. ^ Li, Y.X.; Lukeman, R. & Edelstein-Keshet, L. (2007) "Minimal mechanisms for school formation in self-propelled particles" Physica D: Nonlinear Phenomena, 237(5): 699–720. doi:10.1016/j.physd.2007.10.009
  28. ^ Lewis, M. Anthony; Bekey, George A.. "The Behavioral Self-Organization of Nanorobots Using Local Rules". Proceedings of the 1992 IEEE/RSJ International Conference on Intelligent Robots and Systems. 
  29. ^ Martens, D.; Baesens, B.; Fawcett, T. (2011). "Editorial Survey: Swarm Intelligence for Data Mining". Machine Learning 82 (1): 1–42. doi:10.1007/s10994-010-5216-5. 
  30. ^ Miller, Peter (2010). The Smart Swarm: How understanding flocks, schools, and colonies can make us better at communicating, decision making, and getting things done. New York: Avery. ISBN 9781583333907. 
  31. ^ ""Planes, Trains and Ant Hills: Computer scientists simulate activity of ants to reduce airline delays". Science Daily. April 1, 2008. http://www.sciencedaily.com/videos/2008/0406-planes_trains_and_ant_hills.htm. Retrieved December 1, 2010. 

Bibliography